/**
  ******************************************************************************
  * @file    usart.h
  * @brief   This file contains all the function prototypes for
  *          the usart.c file
  ******************************************************************************
  * @attention
  *
  * <h2><center>&copy; Copyright (c) 2022 STMicroelectronics.
  * All rights reserved.</center></h2>
  *
  * This software component is licensed by ST under BSD 3-Clause license,
  * the "License"; You may not use this file except in compliance with the
  * License. You may obtain a copy of the License at:
  *                        opensource.org/licenses/BSD-3-Clause
  *
  ******************************************************************************
  */
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __USART_H__
#define __USART_H__

#ifdef __cplusplus
extern "C" {
#endif

/* Includes ------------------------------------------------------------------*/
#include "main.h"

/* USER CODE BEGIN Includes */

#include<stdio.h>
#include<string.h>

/* USER CODE END Includes */

extern UART_HandleTypeDef huart1;
extern UART_HandleTypeDef huart3;

/* USER CODE BEGIN Private defines */

extern  char               g_uart1_rxbuf[256];		/* USART1 receive buffer size for  serial port forwarding */
extern  uint8_t            g_uart1_bytes;			/* Number of bytes received by the serial port received */

#define clear_uart1_rxbuf() do { memset(g_uart1_rxbuf, 0, sizeof(g_uart1_rxbuf)); g_uart1_bytes=0; } while(0)

#define	at_uart				&huart3					/* Serial port for sending AT command */
extern  char               	g_atcmd_rxbuf[256];		/* USART3 receive buffer size for AT command */
extern  uint8_t            	g_atcmd_bytes;

#define clear_atcmd_rxbuf() do { memset(g_atcmd_rxbuf, 0, sizeof(g_atcmd_rxbuf)); g_atcmd_bytes=0; } while(0)

/* USER CODE END Private defines */

void MX_USART1_UART_Init(void);
void MX_USART3_UART_Init(void);

/* USER CODE BEGIN Prototypes */

extern void uart_forward(void);

/* USER CODE END Prototypes */

#ifdef __cplusplus
}
#endif

#endif /* __USART_H__ */

/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
